﻿
using Xacml.Core.Interfaces;

namespace Xacml.Core.Runtime.Functions
{
  public abstract class BaseMathOperation : FunctionBase, ITypeSpecificFunction
  {
    public override IDataType Returns
    {
      get
      {
        return this.DataType;
      }
    }

    public override IDataType[] Arguments
    {
      get
      {
        return new IDataType[2]
        {
          this.DataType,
          this.DataType
        };
      }
    }

    public abstract IDataType DataType { get; }
  }
}
